KAMP: Karlsruhe Architectural Maintainability Prediction

نویسندگان

  • Johannes Stammel
  • Ralf Reussner
چکیده

In their lifetime software systems usually need to be adapted in order to fit in a changing environment or to cover new required functionality. The effort necessary for implementing changes is related to the maintainability of the software system. Therefore, maintainability is an important quality aspect of software systems. Today Software Architecture plays an important role in achieving software quality goals. Therefore, it is useful to evaluate software architectures regarding their impact on the quality of the program. However, unlike other quality attributes, such as performance or reliability, there is relatively less work on the impact of the software architecture on maintainability in a quantitative manner. In particular, the cost of software evolution not only stems from software-development activities, such as reimplementation, but also from software management activities, such as re-deployment, upgrade installation, etc. Most metrics for software maintainability base on code of object-oriented designs, but not on architectures, and do not consider costs from software management activities. Likewise, existing current architectural maintainability evaluation techniques manually yield just qualitative (and often subjective) results and also do concentrate on software (re-)development costs. In this paper, we present KAMP, the Karlsruhe Architectural Maintainability Prediction Method, a quantitative approach to evaluate the maintainability of software architectures. Our approach estimates the costs of change requests for a given architecture and takes into account re-implementation costs as well as re-deployment and upgrade activities. We combine several strengths of existing approaches. First, our method evaluates maintainability for concrete change requests and makes use of explicit architecture models. Second, it estimates change efforts using semi-automatic derivation of work plans, bottom-up effort estimation, and guidance in investigation of estimation supports (e.g. design and code properties, team organization, development environment, and other influence factors).

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Successful Architectural Knowledge Sharing: Beware of Emotions

Improved Feedback for Architectural Performance Prediction using Software Cartography Visualizations Klaus Krogmann (Universität Karlsruhe (TH), Germany), Christian M. Schweda (Technische Universität München, Germany), Sabine Buckl (Technische Universität München, Germany), Michael Kuperberg (Universität Karlsruhe, Germany), Anne Martens (Universität Karlsruhe (TH), Germany) and Florian Matthes...

متن کامل

A Quantitative Evaluation of Maintainability of Software Architecture Styles

Proper decisions play a crucial role in any software architecture design process. An important decision of design stage is the selection of a suitable software architecture style. Lack of investigation on the quantitative impact of architecture styles on software quality attributes is the main problem in using such styles. Consequently, the use of architecture styles in designing is based on th...

متن کامل

Maintainability Techniques for Software Development Approaches – A Systematic Survey

Time, effort and money involved in maintaining software has always been considered greater than its development time. Also, its vagueness in prediction at early stage of development makes the process more complex. Researchers and developers are working on devising various techniques/algorithms for better prediction. Present paper conducts a detailed survey on these techniques and identified sev...

متن کامل

Towards a Maintainability Evaluation in Software Architectures

Maintainability is an internal quality characteristic that is contemplated by many users and developers, and therefore is deeply related to software architecture. It presents an organization of its components and relation which promote or obstruct different attributes like testability, changeability, and analyzability. As part of a research in progress, this article analyzes and organizes a set...

متن کامل

Architectural Software Patterns and Maintainability: a Case Study (hs-ida-ea-01-105) Architectural Software Patterns and Maintainability: a Case Study Architectural Software Patterns and Maintainability: a Case Study

The importance of building maintainable software is being recognized in the community of software development. By developing software that is easy to maintain, the time and resources needed to perform the modifications may be decreased. This will in turn mean economical savings and increased profits. Architectural software patterns are said to promote the development of maintainable software. T...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009